home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Language/OS - Multiplatform Resource Library
/
LANGUAGE OS.iso
/
clu
/
readme.man
< prev
next >
Wrap
Lisp/Scheme
|
1993-08-14
|
7KB
|
156 lines
*** CLU online manual (in Emacs) -- version 1.1 ***
------------------------------------------------------------
( Created by Boaz Ben-Zvi <boaz@lcs.mit.edu> Jan. 31, 1991)
This directory contains the files needed to put the CLU manual online as
part of the Emacs help facility.
(Basically the Emacs help facility is extended with operations to support
Clu help in a manner similar to Emacs' help).
The file clu-manual.tar.Z contains the following files:
- CLU-DOC : Contains the CLU manual in a format similar to Emacs' DOC file.
- CLU-DOC-keys.el : Contains keys and indexes for the CLU-DOC file (can be
generated from a CLU-DOC file by calling clu-doc-snarf-file).
- clu-doc.el : The collection of Emacs-lisp functions that do the work.
- README : This file.
--------------------------------------------------------------------------
TO INSTALL:
Put the files CLU-DOC and CLU-DOC-keys.el in some directory (e.g.,
/usr/lib/clu/manual/). You can set the variable clu-doc-file-name (in your
.emacs or in this file) to the full path name of your CLU-DOC file (e.g.,
(setq clu-doc-file-name "/usr/lib/clu/manual/CLU-DOC") ), else you will be
prompted for that name (can also be set by calling M-x clu-doc-visit-file)
If you ever want to modify the CLU-DOC file for some reason, you'll have
to regenerate the CLU-DOC-keys.el file by calling M-x clu-doc-snarf-file .
--------------------------------------------------------------------------
TO LOAD:
Load the file clu-doc.el[c] into your Emacs. For example, put in
your .emacs file something like:
(load "/mit/6.170/manual/clu-doc" 'no-error)
You can also load it while inside Emacs:
M-x load-file <RETURN>
Load file: /mit/6.170/manual/clu-doc.elc
---------------------------------------------------------------------------
TO USE:
Once loaded, just call help ( normaly by hitting Control-h ) followed by
one of the keys:
1. 'd' -- for help on Clu symbols (types or operations. Examples: int$mul,
array, ARRAY$FILL, FILE_NAME, stream$primary_output, string$s2ac)
2. 'g' -- for general Clu documentation topics (Examples: TERMINAL_I/O, FILE,
own_variables, CLUSTERS, syntactic_sugar).
3. '/' -- for Clu apropos (give partial name, like FILE, and get a list of all
the Clu symbols and topics that include that name).
EXAMPLE:
You type C-h d
Emacs prompts with Describe CLU symbol:
You type oneof$make_ <RETURN>
Emacs splits your screen and gives help about the operation ONEOF$MAKE_
Note that:
- case is unimportant.
- The help text is taken from the Clu manual (Appendix A in the 6.170 book).
- Symbol completion works (hit the TAB key); for example, if you type ARRAY$
followed by TAB, you'll get a list of possible completions (all the
operations of ARRAY in this case).
- If the cursor is placed on a Clu symbol when you call C-h d, emacs would
propose that symbol as default; for example, if your cursor is placed
someplace on "ARRAY[foo]$FILL" in your file, and you type C-h d , emacs
would prompt: "Describe CLU symbol (default ARRAY$FILL): ", typing RETURN
would select this default.
---------------------------------------------------------------------------
HELP ON USE: ( a short version of this file )
After loading, type M-x (i.e. META x) clu-doc-help
---------------------------------------------------------------------------
ADDING USER DEFINED ABSTRACTIONS TO THE MANUAL:
You can add you CLU files to the current session of the CLU on-line manual
by calling M-x (i.e. META x) clu-doc-add-file and giving it a name of one
of your clu files.
Using clu-doc-add-directory instead takes a directory and adds all the
CLU files in that directory to the current session of the CLU manual. Emacs
"knows" which files are CLU files by matching the files' suffixes with the
content of the Emacs variable clu-doc-file-suffix (normally ".clu"). You
can change this variable (M-x set-variable) if you want (e.g., when adding
".spc" files).
Once added, you can not change the specification you added, but they will
disappear once you exit Emacs.
DUMPING AND LOADING:
You can also dump the specifications of your CLU files into dump files
and then load these dump files (same effect as adding these CLU files to the
current session of the CLU on-line manual).
Use M-x clu-doc-dump-file to dump a CLU file into a dump file. This
operation actually appends to the dump file, so you can dump CLU files
again and again to the same dump file. (This call also asks you about adding
the dumped spec to the current session of the CLU manual).
Use M-x clu-doc-load-file to load a dump file.
To make life easy: when Emacs initializes a new session of the CLU manual,
it loads all the dump files listed in the list clu-doc-dumped-files-to-load .
Thus by setting this variable to the list of your dump files, you do not
have to load them by hand.
EXAMPLE:
I make my dump files
M-x clu-doc-dump-file <RETURN>
Give name of a CLU file: /mit/boaz/project/graph.clu <RETURN>
File to append this dump to: /mit/boaz/project/PROJECT-DUMP <RETURN>
Also add to current CLU manual? (y or n) <n>
M-x clu-doc-dump-file <RETURN>
Give name of a CLU file: /mit/boaz/project/table.clu <RETURN>
File to append this dump to: /mit/boaz/project/PROJECT-DUMP <RETURN>
Also add to current CLU manual? (y or n) <n>
...............................
................................
M-x clu-doc-dump-file <RETURN>
Give name of a CLU file: /mit/boaz/6.170/part1.clu <RETURN>
File to append this dump to: /mit/boaz/project/PS-DUMP <RETURN>
Also add to current CLU manual? (y or n) <n>
................................
in my .emacs:
(setq clu-doc-load-file '("~/project/PROJECT-DUMP" "~/6.170/PS-DUMP"))
and after starting, I hit C-h d and can get to my types (clusters),
procedures, iterators etc., as well as the CLU built in definitions.
TOTAL DUMPING:
You can create a new version of CLU-DOC that includes some of your user
defined abstractions by:
-- Starting the CLU on-line manual.
-- Adding your definitions ( M-x clu-doc-add-file, clu-doc-add-directory )
-- dump the whole current session using M-x clu-doc-total-dump . This
would create a new CLU-DOC style file and the appropriate -keys.el file.
You can set your clu-doc-file-name variable (in .emacs) so that the new
version would be used. Thus you'll have your definitions as part of the manual.
---------------------------------------------------------------------------
Please send comments, complaints, bug reports etc. to Boaz Ben-Zvi at
boaz@athena.mit.edu (or boaz@lcs.mit.edu)